home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
17 Bit Software 6: Level 6
/
17 Bit - Level 6 (1998)(Epic Marketing)[!].iso
/
files
/
4089.dms
/
4089.adf
/
FileSelect
/
FileSelect.Anleitung
next >
Wrap
Text File
|
1992-05-14
|
12KB
|
252 lines
FileSelect Version 2.0
(C) André Wichmann / CLUSTER September 1990.
Posener Weg 4
5300 Bonn 1
Deutschland
Dieses Programm ist Freeware und darf frei kopiert, verändert oder benutzt
werden, auch in kommerziellen Programmen.
-----------------------------------------------------------------------------
- FileSelect V2.0 -
~~~~~~~~~~~~~~~~~~~~~
Und hier ist ein weiterer Filerequester in der nicht enden wollenden Serie...
Aber dieses Mal mit einigen neuen Features !
PRO UND CONTRA
~~~~~~~~~~~~~~~
Pro FileSelect V2.0:
- Zeigt auch die Filegrößen an, ist aber trotzdem noch klein
genug, um auf einen Lo-res Screen zu passen
- Schnell und Kurz (Meiner Meinung nach !)
- Die Farben können frei bestimmt werden
- Eine Filterliste kann übergeben werden
- Keine Beschränkungen (manche können nur 200 Files anzeigen
warum eigentlich ?!?)
- Alles ist mit Strukturen und einem eigenen include-file ge-
löst worden (sehr Zukunftsfreundlich !)
- Drei neue, hilfreiche Gadgets können jetzt ein oder ausge-
schaltet werden: makedir, delete und rename (Habe ich schon
oft vermißt !!!)
- Natürlich kann man den Windowtitel, den Pfad und den
Filenamen beim Aufruf angeben (Ich muß wohl nicht erwähnen,
daß man FileSelect irgendwo auf dem Screen plazieren kann)
- Wenn kein Screenpointer übergeben wird, sucht sich
FileSelect automatisch den aktiven Screen heraus
- Zurück bekommt man den Pfad, den Filenamen UND den vollen
Namen
- Device-Anzeige und Doppelklick werden unterstützt
- Man braucht keine große, externe library wie ARP
FileSelect V2.0 Contras:
- Die Routine muß wegen einigen Images im CHIPMEM liegen
(wird demnächst verbessert)
WIE MAN ES BENUTZT
~~~~~~~~~~~~~~~~~~~
Man kann im 'Path'-Gadget einen beliebigen Pfad eingeben, den FileSelect
nach drücken der Return-Taste anzuzeigen versucht.Zur Fileauswahl kann man
entweder die Maus benutzen oder den Namen im 'File'-Gadget eingeben.Um den
Requester zu beenden muß man entweder 'Okay' anklicken, einen Doppelklick
auf einem File machen oder 'Cancel' anklicken.Die drei DOS-gadgets (makedir,
delete und rename) machen das Gleiche wie die gleichnamigen CLI-Kommandos.
Manchmal kann man diese Gadgets nicht anwählen; sie sind dann vom Hauptpro-
gramm ausgeschaltet worden.Mit dem rechten Mausknopf kann eine Liste aller
angeschlossenen Devices ausgegeben werden (df0:, ram: usw.).
WIE MAN FILESELECT AUFRUFT
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Diese Version ist mit dem DevPac Assembler V2.14 geschrieben worden, aber
wenn das linkfähige Programm 'FileSelect.o' benutzt wird, kann es in jeder
Sprache aufgerufen werden (glaube ich zumindest).Der eigene Quellcode muß
das include-file 'FileSelect.i' included haben, da dieses einige wichtige
Strukturen und Konstanten definiert.Um FileSelect aufzurufen, muß das
Adressregister a0 auf folgende Struktur zeigen:
NFS2_NewFileSelect rs.b 0
NFS2_LeftEdge rs.w 1
NFS2_TopEdge rs.w 1
NFS2_WindowTitle rs.l 1
NFS2_DefaultPath rs.l 1
NFS2_DefaultFile rs.l 1
NFS2_Screenptr rs.l 1
NFS2_GadgetFlags rs.w 1
NFS2_FirstFilter rs.l 1
NFS2_BackPen rs.b 1
NFS2_FilePen rs.b 1
NFS2_DirPen rs.b 1
NFS2_GadgetPen rs.b 1
NFS2_Reserved1 rs.l 1
NFS2_Reserved2 rs.l 1
NFS2_SIZEOF rs.w 0
NFS2_LeftEdge.w Dies ist die X-Position für das FileSelect Window.
Mit NFS2_CENTREPOS (-1) wird es auf einem Hires-
Screen zentriert.
NFS2_TopEdge.w Dies ist die Y-Position für das FileSelect Window.
Mit NFS2_CENTREPOS (-1) wird es auf einem Hires-
Screen zentriert.
NFS2_WindowTitle.l Ein Zeiger auf den Window-Titel, der mit einem Null-
Byte abgeschlossen sein muß.Mit NFS2_DEFAULTTITLE (0)
wird ein vorgegebener Titel benutzt.
NFS2_DefaultPath.l Ein Zeiger auf einen String, der in das Pfad-Gadget
übertragen werden soll.Mit NFS2_NODEFAULT (0) wird
kein Pfad vorgegeben.
NFS2_DefaultFile.l Ein Zeiger auf einen String, der in das File-Gadget
übertragen werden soll.Mit NFS2_NODEFAULT (0) wird
kein Filename vorgegeben.
NFS2_Screenptr.l Der Zeiger auf den Screen.NFS2_ACTIVESCREEN (0)
bringt FileSelect dazu, sein Window auf dem aktuellen
Screen anzuzeigen.
NFS2_GadgetFlags.w Dieses Flag schaltet die drei DOS-Gadgets makedir,
delete und rename an bzw. aus.Mit NFS2_NOGADGETS (0)
werden alle drei ausgeschaltet, mit NFS2_MAKEDIR (1),
NFS2_DELETE (2) und NFS2_RENAME (4) einzelnd
eingeschaltet.Beispiele:
NFS2_MAKEDIR!NFS2_DELETE schaltet alle bis auf das
Rename-Gadget an.
NFS2_MAKEDIR!NFS2_DELETE!NFS2_RENAME schaltet alle
DOS-Gadgets ein.
NFS2_FirstFilter.l Ein Zeiger, der auf die erste Struktur der Filter-
Liste zeigt (siehe unten).Mit NFS2_NOFILTER (0)
zeigt alle Files an.
NFS2_BackPen.b Der Pen, mit dem der Hintergrund gezeichnet werden
soll.Mit NFS2_DEFAULTPEN (0) wird 1 (Weiß) benutzt.
NFS2_FilePen.b Der Pen für die Fileanzeige.Vorgegeben: 2 (Schwarz).
NFS2_DirPen.b Der Pen für dir Diranzeige.Vorgegeben: 3 (Orange).
NFS2_GadgetPen.b Der Pen für die Gadgets.Vorgegeben: 2 (Schwarz).
NFS2_Reserved1.l Auf Null setzen!
NFS2_Reserved2.l Auf Null setzen!
Man kann FileSelect eine Liste von Filtern übergeben,d.h. daß Files mit
den angegebenen Endungen nicht angezeigt werden.Das kann sinnvoll sein,
wenn man keine .info-, .iff-, .txt-files usw. angezeigt haben will.
NFS2_FirstFilter sollte dann auf diese Struktur zeigen:
FS2F_FilterElement rs.b 0
FS2F_NextFilter rs.l 1
FS2F_FilterLength rs.b 1
FS2F_AdjustToWord rs.b 1
FS2F_Filter rs.l 1
FS2F_Reserved rs.l 1
FS2F_SIZEOF rs.w 0
FS2F_NextFilter.l Entweder ein Zeiger auf das nächste Element der
Filterliste oder FS2F_LASTFILTER (0) um das Ende
der Liste zu markieren.
FS2F_FilterLength.b Länge des Strings in bytes.
FS2F_AdjustToWord.b Unwichtig; zum Angleichen an die Wortgrenze.
FS2F_Filter Ein Zeiger auf den String, der die Endung darstellt.
FS2F_Reserved Auf Null setzen!
Wenn kein Guru aufgetaucht ist, wird daß Hauptprogramm folgende Struktur
im Datenregister d0 zurückerhalten:
FS2_FileSelectReturn rs.b 0
FS2_Status rs.w 1
FS2_Path rs.l 1
FS2_File rs.l 1
FS2_FullName rs.l 1
FS2_Reserved1 rs.l 1
FS2_Reserved2 rs.l 1
FS2_SIZEOF rs.w 0
FS2_Status.w FS2_OKAY (0) bedeutet, daß der Benutzer das Okay-
Gadget angeklickt hat.FS2_CANCEL (1) heißt das
Gleiche für das Cancel-Gadget.FS2_WINDOWERR (3)
bedeutet, daß FileSelect das Window nicht öffnen
konnte (vermutlich wegen zu wenig CHIPMEM).
FS2_Path.l Ein Zeiger auf den Pfad.FS2_NOPATH (0) taucht dort
nach CANCEL oder WINDOWER auf.
FS2_File.l Ein Zeiger auf den Filenamen.FS2_NOFILE (0) taucht
dort nach CANCEL oder WINDOWERR auf.
FS2_FullName.l Ein Zeiger auf den vollen Namen (Pfad + Filename).
FS2_NOFULLNAME (0) taucht dort nach CANCEL oder
WINDOWERR auf.
FS2_Reserved1.l Normalerweise Null.
FS2_Reserved2.l Normalerweise Null.
FileSelect braucht sehr wenig Speicher, nur ein wenig CHIPMEM für das Window
und pro angezeigtes File/Dir/Device 42 Bytes.
Um FileSelect in eigene Programme einzubauen gibt es zwei Möglichkeiten:
1) Einfach den Quellcode an das Ende des Hauptprogrammes hängen und die
Include- und die Opt-Zeile löschen.
2) Mit blink an das Hauptprogramm anlinken.
Wenn FileSelect V2.0 benutzt wird sollte 'FileSelect.i' includet werden.
Wenn es nicht gelinkt, sondern mit assembliert wird, werden folgende
includes gebraucht:
include exec/exec_lib.i
include exec/memory.i
include intuition/intuition_lib.i
include intuition/intuition.i
include intuition/intuitionbase.i
include graphics/graphics_lib.i
include libraries/dos_lib.i
include libraries/dos.i
include libraries/dosextens.i
include FileSelect.i
Wenn FileSelect gelinkt werden soll, müssen im Hauptprogramm folgende
Importe/Exporte definiert werden:
XREF FileSelect
XDEF _IntuitionBase,_GfxBase,_DOSBase
Beim Aufruf müssen Intuition.library, Graphics.library und Dos.library
offen sein.
Ich kann leider nicht sagen, wie man FileSelect in anderen Sprachen als
Assembler benutzt, da ich keine Erfahrung mit solchen Dingen habe.Ich
weiß nicht, ob Compiler mit meinem Include-file klarkommen, aber wenn
man es nicht benutzt und FileSelect dazulinkt, müßte es eigentlich
klappen.Ich hoffe, daß ich bald Post mit Tips bekomme !
FileSelect darf beliebig geändert oder erweitert werden, aber wenn große
Änderungen gemacht werden, bitte ich darum, die neue Version zugeschickt
zu bekommen (Ich schicke die Disk natürlich zurück!).Eigene verbesserte
Versionen werden auch bald erscheinen.
...AW 29/09/1990...
Aragorn/CLUSTER rules !!!
-----------------------------------------------------------------------------
CLUSTER ist eine legale Programmierergruppe, die hauptsächlich auf dem Amiga
arbeitet und Freeware produziert (vielleicht ein paar kommerzielle Programme
später ?!?).
CLUSTER ist mit den folgenden Mitgliedern im Januar 1989 gegründet worden:
André Wichmann, Guido Wegener, Martin Rosenkranz, Martin Baumann, Philipp
Witkop, Stefan Kaspari, Stefan Lietzow und Giang Nguyen.
Heute, am 29.09.1990, sind wir nur noch die Elite von damals:
André Wichmann Assembler-Programmierer (Aragorn !)
Guido Wegener C-Programmierer (Wonko der Verständige !)
Martin Mohr Assembler/Floppy-Programmierer (X-tension !)
Martin Rosenkranz Grafik (Flex !)
Philipp Witkop Sound (Madison !)
Briefe sind immer willkommen !!! Schickt Bugs, neue Ideen, Geld, Disks,
enthusiastische Fan-Briefe usw. an:
André Wichmann
Posener Weg 4
5300 Bonn 1
Deutschland
Amiga - Die zweitbeste Maschine nach dem C64 !!!